/*
 * Copyright 2011 Google Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#include "fembot.h"

#ifndef BSTG_BASEDIR
#error You need to define the mount point used during your test execution.
#endif

#include <sys/cdefs.h>

__RCSID("$Id: pathstore.c 3 2012-04-06 08:46:13Z kirk.j.russell@gmail.com $");


const char *const bstg_pathstore[] = {
    BSTG_BASEDIR"/111/true",
    BSTG_BASEDIR"/111/111/true",
    BSTG_BASEDIR"/111/111/111/true",
    BSTG_BASEDIR"/111/111/222/true",
    BSTG_BASEDIR"/111/111/333/true",
    BSTG_BASEDIR"/111/222/true",
    BSTG_BASEDIR"/111/222/111/true",
    BSTG_BASEDIR"/111/222/222/true",
    BSTG_BASEDIR"/111/222/333/true",
    BSTG_BASEDIR"/111/333/true",
    BSTG_BASEDIR"/111/333/111/true",
    BSTG_BASEDIR"/111/333/222/true",
    BSTG_BASEDIR"/111/333/333/true",
    BSTG_BASEDIR"/222/true",
    BSTG_BASEDIR"/222/111/true",
    BSTG_BASEDIR"/222/111/111/true",
    BSTG_BASEDIR"/222/111/222/true",
    BSTG_BASEDIR"/222/111/333/true",
    BSTG_BASEDIR"/222/222/true",
    BSTG_BASEDIR"/222/222/111/true",
    BSTG_BASEDIR"/222/222/222/true",
    BSTG_BASEDIR"/222/222/333/true",
    BSTG_BASEDIR"/222/333/true",
    BSTG_BASEDIR"/222/333/111/true",
    BSTG_BASEDIR"/222/333/222/true",
    BSTG_BASEDIR"/222/333/333/true",
    BSTG_BASEDIR"/333/true",
    BSTG_BASEDIR"/333/111/true",
    BSTG_BASEDIR"/333/111/111/true",
    BSTG_BASEDIR"/333/111/222/true",
    BSTG_BASEDIR"/333/111/333/true",
    BSTG_BASEDIR"/333/222/true",
    BSTG_BASEDIR"/333/222/111/true",
    BSTG_BASEDIR"/333/222/222/true",
    BSTG_BASEDIR"/333/222/333/true",
    BSTG_BASEDIR"/333/333/true",
    BSTG_BASEDIR"/333/333/111/true",
    BSTG_BASEDIR"/333/333/222/true",
    BSTG_BASEDIR"/333/333/333/true",
    BSTG_BASEDIR"/111/false",
    BSTG_BASEDIR"/111/111/false",
    BSTG_BASEDIR"/111/111/111/false",
    BSTG_BASEDIR"/111/111/222/false",
    BSTG_BASEDIR"/111/111/333/false",
    BSTG_BASEDIR"/111/222/false",
    BSTG_BASEDIR"/111/222/111/false",
    BSTG_BASEDIR"/111/222/222/false",
    BSTG_BASEDIR"/111/222/333/false",
    BSTG_BASEDIR"/111/333/false",
    BSTG_BASEDIR"/111/333/111/false",
    BSTG_BASEDIR"/111/333/222/false",
    BSTG_BASEDIR"/111/333/333/false",
    BSTG_BASEDIR"/222/false",
    BSTG_BASEDIR"/222/111/false",
    BSTG_BASEDIR"/222/111/111/false",
    BSTG_BASEDIR"/222/111/222/false",
    BSTG_BASEDIR"/222/111/333/false",
    BSTG_BASEDIR"/222/222/false",
    BSTG_BASEDIR"/222/222/111/false",
    BSTG_BASEDIR"/222/222/222/false",
    BSTG_BASEDIR"/222/222/333/false",
    BSTG_BASEDIR"/222/333/false",
    BSTG_BASEDIR"/222/333/111/false",
    BSTG_BASEDIR"/222/333/222/false",
    BSTG_BASEDIR"/222/333/333/false",
    BSTG_BASEDIR"/333/false",
    BSTG_BASEDIR"/333/111/false",
    BSTG_BASEDIR"/333/111/111/false",
    BSTG_BASEDIR"/333/111/222/false",
    BSTG_BASEDIR"/333/111/333/false",
    BSTG_BASEDIR"/333/222/false",
    BSTG_BASEDIR"/333/222/111/false",
    BSTG_BASEDIR"/333/222/222/false",
    BSTG_BASEDIR"/333/222/333/false",
    BSTG_BASEDIR"/333/333/false",
    BSTG_BASEDIR"/333/333/111/false",
    BSTG_BASEDIR"/333/333/222/false",
    BSTG_BASEDIR"/333/333/333/false",
    BSTG_BASEDIR"/111/core",
    BSTG_BASEDIR"/111/111/core",
    BSTG_BASEDIR"/111/111/111/core",
    BSTG_BASEDIR"/111/111/222/core",
    BSTG_BASEDIR"/111/111/333/core",
    BSTG_BASEDIR"/111/222/core",
    BSTG_BASEDIR"/111/222/111/core",
    BSTG_BASEDIR"/111/222/222/core",
    BSTG_BASEDIR"/111/222/333/core",
    BSTG_BASEDIR"/111/333/core",
    BSTG_BASEDIR"/111/333/111/core",
    BSTG_BASEDIR"/111/333/222/core",
    BSTG_BASEDIR"/111/333/333/core",
    BSTG_BASEDIR"/222/core",
    BSTG_BASEDIR"/222/111/core",
    BSTG_BASEDIR"/222/111/111/core",
    BSTG_BASEDIR"/222/111/222/core",
    BSTG_BASEDIR"/222/111/333/core",
    BSTG_BASEDIR"/222/222/core",
    BSTG_BASEDIR"/222/222/111/core",
    BSTG_BASEDIR"/222/222/222/core",
    BSTG_BASEDIR"/222/222/333/core",
    BSTG_BASEDIR"/222/333/core",
    BSTG_BASEDIR"/222/333/111/core",
    BSTG_BASEDIR"/222/333/222/core",
    BSTG_BASEDIR"/222/333/333/core",
    BSTG_BASEDIR"/333/core",
    BSTG_BASEDIR"/333/111/core",
    BSTG_BASEDIR"/333/111/111/core",
    BSTG_BASEDIR"/333/111/222/core",
    BSTG_BASEDIR"/333/111/333/core",
    BSTG_BASEDIR"/333/222/core",
    BSTG_BASEDIR"/333/222/111/core",
    BSTG_BASEDIR"/333/222/222/core",
    BSTG_BASEDIR"/333/222/333/core",
    BSTG_BASEDIR"/333/333/core",
    BSTG_BASEDIR"/333/333/111/core",
    BSTG_BASEDIR"/333/333/222/core",
    BSTG_BASEDIR"/333/333/333/core",
    BSTG_BASEDIR"/111/zero",
    BSTG_BASEDIR"/111/111/zero",
    BSTG_BASEDIR"/111/111/111/zero",
    BSTG_BASEDIR"/111/111/222/zero",
    BSTG_BASEDIR"/111/111/333/zero",
    BSTG_BASEDIR"/111/222/zero",
    BSTG_BASEDIR"/111/222/111/zero",
    BSTG_BASEDIR"/111/222/222/zero",
    BSTG_BASEDIR"/111/222/333/zero",
    BSTG_BASEDIR"/111/333/zero",
    BSTG_BASEDIR"/111/333/111/zero",
    BSTG_BASEDIR"/111/333/222/zero",
    BSTG_BASEDIR"/111/333/333/zero",
    BSTG_BASEDIR"/222/zero",
    BSTG_BASEDIR"/222/111/zero",
    BSTG_BASEDIR"/222/111/111/zero",
    BSTG_BASEDIR"/222/111/222/zero",
    BSTG_BASEDIR"/222/111/333/zero",
    BSTG_BASEDIR"/222/222/zero",
    BSTG_BASEDIR"/222/222/111/zero",
    BSTG_BASEDIR"/222/222/222/zero",
    BSTG_BASEDIR"/222/222/333/zero",
    BSTG_BASEDIR"/222/333/zero",
    BSTG_BASEDIR"/222/333/111/zero",
    BSTG_BASEDIR"/222/333/222/zero",
    BSTG_BASEDIR"/222/333/333/zero",
    BSTG_BASEDIR"/333/zero",
    BSTG_BASEDIR"/333/111/zero",
    BSTG_BASEDIR"/333/111/111/zero",
    BSTG_BASEDIR"/333/111/222/zero",
    BSTG_BASEDIR"/333/111/333/zero",
    BSTG_BASEDIR"/333/222/zero",
    BSTG_BASEDIR"/333/222/111/zero",
    BSTG_BASEDIR"/333/222/222/zero",
    BSTG_BASEDIR"/333/222/333/zero",
    BSTG_BASEDIR"/333/333/zero",
    BSTG_BASEDIR"/333/333/111/zero",
    BSTG_BASEDIR"/333/333/222/zero",
    BSTG_BASEDIR"/333/333/333/zero",
    BSTG_BASEDIR"/111/command.com",
    BSTG_BASEDIR"/111/111/command.com",
    BSTG_BASEDIR"/111/111/111/command.com",
    BSTG_BASEDIR"/111/111/222/command.com",
    BSTG_BASEDIR"/111/111/333/command.com",
    BSTG_BASEDIR"/111/222/command.com",
    BSTG_BASEDIR"/111/222/111/command.com",
    BSTG_BASEDIR"/111/222/222/command.com",
    BSTG_BASEDIR"/111/222/333/command.com",
    BSTG_BASEDIR"/111/333/command.com",
    BSTG_BASEDIR"/111/333/111/command.com",
    BSTG_BASEDIR"/111/333/222/command.com",
    BSTG_BASEDIR"/111/333/333/command.com",
    BSTG_BASEDIR"/222/command.com",
    BSTG_BASEDIR"/222/111/command.com",
    BSTG_BASEDIR"/222/111/111/command.com",
    BSTG_BASEDIR"/222/111/222/command.com",
    BSTG_BASEDIR"/222/111/333/command.com",
    BSTG_BASEDIR"/222/222/command.com",
    BSTG_BASEDIR"/222/222/111/command.com",
    BSTG_BASEDIR"/222/222/222/command.com",
    BSTG_BASEDIR"/222/222/333/command.com",
    BSTG_BASEDIR"/222/333/command.com",
    BSTG_BASEDIR"/222/333/111/command.com",
    BSTG_BASEDIR"/222/333/222/command.com",
    BSTG_BASEDIR"/222/333/333/command.com",
    BSTG_BASEDIR"/333/command.com",
    BSTG_BASEDIR"/333/111/command.com",
    BSTG_BASEDIR"/333/111/111/command.com",
    BSTG_BASEDIR"/333/111/222/command.com",
    BSTG_BASEDIR"/333/111/333/command.com",
    BSTG_BASEDIR"/333/222/command.com",
    BSTG_BASEDIR"/333/222/111/command.com",
    BSTG_BASEDIR"/333/222/222/command.com",
    BSTG_BASEDIR"/333/222/333/command.com",
    BSTG_BASEDIR"/333/333/command.com",
    BSTG_BASEDIR"/333/333/111/command.com",
    BSTG_BASEDIR"/333/333/222/command.com",
    BSTG_BASEDIR"/333/333/333/command.com",
    BSTG_BASEDIR"/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/111/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/111/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/111/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/222/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/222/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/222/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/333/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/333/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/111/333/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/111/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/111/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/111/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/222/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/222/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/222/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/333/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/333/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/222/333/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/111/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/111/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/111/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/222/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/222/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/222/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/333/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/333/111/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/333/222/AsTheStomachTurnsAroundAroundAround.mp3",
    BSTG_BASEDIR"/333/333/333/AsTheStomachTurnsAroundAroundAround.mp3",
};

unsigned bstg_pathstore_count = 0;

/*
 * Get an fd from the set.
 *
 * Returns an fd on success.
 * Returns -1 on error.
 */
inline const char *
bstg_pathstore_get()
{
    return bstg_pathstore[bstg_pathstore_count++ %
        (sizeof(bstg_pathstore)/sizeof(bstg_pathstore[0]))];
}

